package tpalgo3.util;

import java.awt.Point;

import tpalgo3.modelo.tablero.Camino;
import tpalgo3.modelo.tablero.Casillero;

public class CoordenadasUtil {
	public static double distancia(Point uno, Point dos) {
		double quadUno = Math.pow(dos.getX() - uno.getX(), 2);
		double quadDos = Math.pow(dos.getY() - uno.getY(), 2);
		return Math.sqrt(quadUno + quadDos);
	}
	
	public static Integer casilleroMasCercano(Point referencia, Camino camino) {
		Integer masCercano = null;
		double distanciaMinima = Double.MAX_VALUE;
		for (Casillero casillero : camino.getRuta()) {
			double d = distancia(referencia, casillero.getPosicion());
			if (d < distanciaMinima) {
				distanciaMinima = d;
				masCercano = casillero.getOrdenCasillero();
			} 
		}
		return masCercano;
	}
	
	public static boolean perteneceAlCamino(Point referencia, Camino camino) {
		for (Casillero casillero : camino.getRuta()) {
			if (casillero.getPosicion().equals(referencia))
				return true;
		}
		return false;
	}
}